package com.oedtech.esl.config;

import com.oedtech.esl.model.sys.StoreBsid;
import com.oedtech.esl.repository.esl.ApDao;
import com.oedtech.esl.repository.esl.EslFirmwareDao;
import com.oedtech.esl.repository.sys.StoreBsidDao;
import com.oedtech.esl.service.nettyService.DataService;
import com.oedtech.esl.service.nettyService.NettyServer;
import com.oedtech.esl.service.securityService.StoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;


@Component
public class MyApplicationRunner implements ApplicationRunner {
    @Autowired
    private StoreBsidDao storeBsidDao;
    @Autowired
    private NettyServer nettyServer;
    @Autowired
    private ApDao apDao;


    @Override
    public void run(ApplicationArguments applicationArguments) throws InterruptedException {
        apDao.restStatus();
        findStore();
        nettyServer.run();


        }

    /**
     * 初始化storeMap，用于保存基站和门店的对应关系,key为基站id,value=门店编码；
      */
    private void findStore(){
        List<StoreBsid>storeBsidList=storeBsidDao.findAll();
        Map<String, String> storeMap = StoreService.storeMap;
        for (StoreBsid sb : storeBsidList) {
            storeMap.put(sb.getApId()+"", sb.getStoreCode());
        }
    }


}
